#ifndef LOGER_H
#define LOGER_H
#include <string>
#include <QDebug>
#include <iostream>
#include <QFile>
#include <mutex>
#include <QTextStream>
#include <QSharedPointer>

class Loger: public QObject
{
public:
    int minLvl;
    Loger(){}
    virtual ~Loger(){}
    enum Leavel{
        INFO=3,
        WARNING=2,
        ERROR=1
    };
    virtual void log(int lvl, const std::string &message) = 0 ;
};

class ConsoleLoger: public Loger
{
public:
    ConsoleLoger(int _minLvl);
    void log(int lvl, const std::string &messege);
};

class FileLoger: public Loger
{
private:
    QString pyth;
public:
    FileLoger(int _minLvl,QString str);
    void log(int lvl,const std::string &massage);
};
#endif // LOGER_H
